\documentclass[letterpaper,11pt]{article}

\usepackage{listings}
\usepackage{times}

\lstset{frame=tb,
  aboveskip=3mm,
  belowskip=3mm,
  showstringspaces=false,
  columns=flexible,
  basicstyle={\small\ttfamily},
  numbers=none,
  numberstyle=\tiny\color{gray},
  keywordstyle=\color{blue},
  commentstyle=\color{dkgreen},
  stringstyle=\color{mauve},
  breaklines=true,
  breakatwhitespace=true
  tabsize=3
}

\title{The \LaTeX{} format files for recg authors}
\author{Felix Xiaozhu Lin}
\begin{document}

\maketitle

\section{Summary}

For generating a recg-style section of references, e.g.,~\cite{lin2012asplos}, instead of this~\cite{lin2012asplos-raw}.
Also suppress all misc fields except year and pages.

To get the code, do
\begin{lstlisting}
git clone https://code.google.com/p/recg-latex-kit/
\end{lstlisting}

Usage: copy *.bst and *.bib to your latex project folder.

Please contribute to the code.

\section{Why needed?}
RECG style expects this reference~\cite{lin2012asplos} out of the following raw bib entry downloaded from the ACM:

\begin{lstlisting}
@inproceedings{lin2012asplos-raw,
 author = {Lin, Felix Xiaozhu and Wang, Zhen and LiKamWa, Robert and Zhong, Lin},
 title = {Reflex: using low-power processors in smartphones without knowing them},
 booktitle = {Proceedings of the eighteenth international conference on Architectural support for programming languages and operating systems},
 year = {2012},
 isbn = {978-1-4503-0759-8},
 location = {London, England, UK},
 pages = {13--24},
 numpages = {12},
 url = {http://doi.acm.org/10.1145/2150976.2150979},
 doi = {10.1145/2150976.2150979},
 acmid = {2150979},
 publisher = {ACM},
 address = {New York, NY, USA},
 keywords = {distributed shared memory, energy-efficiency, heterogeneous systems, mobile systems},
} 
\end{lstlisting}

\section{Usage}

\begin{enumerate}
\item 
In your-bib.bib, replace the raw booktitle with the acronym, e.g.

change

\begin{lstlisting}
  booktitle={Proceedings of the eighteenth international conference on Architectural support for programming languages and operating systems}
\end{lstlisting}  

to 

\begin{lstlisting}
  booktitle=ASPLOS,
  booktitle-full={Proceedings of the eighteenth international conference on Architectural support for programming languages and operating systems}  
\end{lstlisting}  

Note that we preserve the full name in the \texttt{booktitle-full} filed in case the full name is needed in the future, and bibtex will ignore the field when generating the reference.

For all available acronyms, see abr-long.bib.

\item 
In your paper, to generate the full reference, do:

\begin{lstlisting}
\bibliographystyle{abbrv-recg}
\bibliography{./abr-long,./your-bib}
\end{lstlisting}

which generates, e.g., ``in \emph{Proc. ACM Int. Conf. Architectural Support for Programming Languages \& Operating Systems (ASPLOS)}, pages 46--472. 2012''.

\textbf{Alternatively}, if you want to save some space (e.g., for submission), do:
\begin{lstlisting}
\bibliographystyle{abbrv-recg}
\bibliography{./abr-short,./your-bib}
\end{lstlisting}

which generates, e.g., ``in \emph{Proc. ASPLOS}, pages 46--472. 2012''.

\end{enumerate}


  

\section{Known Issues}

\begin{itemize}
\item 
	\texttt{abr-short} still outputs pages in the reference. Probably another .bst needed?
\item 
	\texttt{abbrv-recg.bst} only deals with inproceedings and article. 
\item 
	\texttt{plain-recg.bst} seems necessary.
\item 
	Didn't know who created the initial version of abr.bib. Should give credit to this person. 
\end{itemize}

%\small		% xzl: for the arXiv version

%\bibliographystyle{plain}
%\bibliographystyle{abbrv}
\bibliographystyle{./abbrv-recg}

%\bibliography{./abr,./browser,./browsersecurity,./xzl}
\bibliography{./abr-long,./your-bib}

\end{document}

